package com.dkm.orproject.dkmoa.service;

import com.dkm.orproject.dkmoa.domain.OaCarUpkeep;
import com.dkm.orproject.dkmoa.domain.OaPersonnel;

import java.util.List;

/**
 * @ClassName : OaCarUpkeepService  //类名
 * @Description : 车辆保养服务接口  //描述
 * @Author : 易嵘  //作者
 * @Date: 2021-02-25 14:26  //时间
 */
public interface OaCarUpkeepService {

    /**
     * id查询
     * @param id 车辆保养id
     * @return 车辆保养信息
     */
    OaCarUpkeep findById(Long id);

    /**
     * 车辆保养新增
     * @param personnel 操作人
     * @param upkeep 车辆保养信息
     * @return 回调函数
     */
    int add(OaPersonnel personnel,OaCarUpkeep upkeep);

    /**
     * 车辆保养修改
     * @param personnel 操作人
     * @param upkeep 车辆保养信息
     * @return 回调函数
     */
    int update(OaPersonnel personnel,OaCarUpkeep upkeep);

    /**
     * id删除
     * @param id 车辆保养id
     * @return 回调函数
     */
    int delete(Long id);

    /**
     * id批量查询
     * @param list 车辆保养id集合
     * @return 车辆保养信息集合
     */
    List<OaCarUpkeep> selectAll(List<Long> list);

    /**
     * 批量删除
     * @param list 车辆信息保养id集合
     * @return 回调函数
     */
    int deleteAll(List<Long> list);

    /**
     * 分页查询
     * @param carUpkeepName 车辆保养名称
     * @param startTime 开始时间
     * @param endTime 结束时间
     * @param page 当前页数
     * @param limit 显示行数
     * @return 车辆保养信息集合
     */
    List<OaCarUpkeep> findAll(String carUpkeepName, String startTime, String endTime, Integer page, Integer limit);

    /**
     * 总行数
     * @param carUpkeepName 车辆保养名称
     * @param startTime 开始时间
     * @param endTime 结束时间
     * @return 总行数
     */
    Long rowCount(String carUpkeepName, String startTime, String endTime);
}
